package org.egedede.gravity.model;

import java.util.Iterator;

import org.egedede.simulation.model.Model;

public class GravityModelIterable implements Iterable<Model> {

	private final int startVx;
	private final int endVx;
	private final int stepVx;
	private final int startVy;
	private final int endVy;
	private final int stepVy;

	private final int constant;
	private final int x,y;
	private final int mass,massRef;

	public GravityModelIterable(int startVx, int endVx, int stepVx,
			int startVy, int endVy, int stepVy, int constant, int x,
			int y, int mass, int massRef) {
		this.startVx = startVx;
		this.endVx = endVx;
		this.stepVx = stepVx;
		this.startVy = startVy;
		this.endVy = endVy;
		this.stepVy = stepVy;
		this.constant = constant;
		this.x = x;
		this.y = y;
		this.mass = mass;
		this.massRef = massRef;
	}

	@Override
	public Iterator<Model> iterator() {
		return new GravityModelIterator(startVx, endVx, stepVx,startVy, endVy,  stepVy,constant,x,y,mass,massRef);
	}

}
